Double-sided, reversible electronic paper

ABSTRACT

Electronic paper which has two sides, reverse of one another, which can be flipped over in response to user generated flip commands is described. When a piece of electronic paper is flipped over, a number of transition views of the paper are generated to give the user the impression that the paper is actually being turned over to reveal a reverse side. Different information can be stored on either side, and the composition of either side can be linked so that changes made to the graphic information on one side affects the graphic information on the other side. In addition, when the amount of graphic information on the reverse side of the paper exceeds the amount of available space normally available on the reverse side when the paper is flipped over, approximately the same amount of space available on the top side, the reverse side is expanded to fit the quantity of information to be displayed on the reverse side. If the reverse side has been expanded, and the user instructs the page to flip back to the top side, the reverse side shrinks back to its original size and then flips back to the top side.

FIELD OF THE INVENTION

The present invention relates generally to electronic objects fordisplaying text and graphics on the screen of a computer, and moreparticularly to electronic paper which can be flipped from a top side toa reverse bottom side within the same general visual area of a displayand which can be independently edited through use of a graphical userinterface.

BRIEF DESCRIPTION OF PRIOR ART

There are many different software programs which allow various images tobe displayed on the screen of a computer. In computer systems havinggraphical user interfaces, these images include icons, dialog boxes,tool boxes and windows, which include a wide variety of different typesof information, such as text pages, spreadsheets and graphics. Manygraphical user interfaces are window based systems. Window based systemsprovide the user with a background screen, often referred to as adesktop, upon which a number of different windows, two-dimensionalboxlike images, can be placed. Each window has the ability to display acertain type of information to a user. One window may represent a diskdrive, and display a group of icons representing the different files ofinformation stored within the disk drive. Other windows may representpages of text created through operation of a word processing program, orpages of graphics created through operation of a drawing program. Othertypes of graphical user interfaces may use other types of images torepresent information to a user, such as loose pages or notebook pagesfor entering text or drawing graphics.

Regardless of the manner of presentation (i.e., a window ornonwindow-based system), there is a certain class of graphic objectscreated by any graphical user interface which can be referred to aselectronic paper. Electronic paper, as defined and used herein, isintended to mean a type of graphic object which presents a user with anelectronically generated image intended to take the place of a physicalpiece of paper or like substance in the environment of the computerizedsystem in which it is utilized. Hence, a page created by a wordprocessing program can represent a typical page of writing paper, a pagecreated by a drawing program can represent a page of drafting paper, apage created by a spreadsheet program can represent a page of accountingpaper, a dialog box or a tool box can represent a form which a usermight fill in to get certain work performed, an image can represent aphotograph, etc.

Even though electronic paper only resides on a computerized systeminstead of practically anywhere (like real paper), and users musttypically use a keyboard and mouse to work with electronic paper insteadof pens and pencils, users are comfortable with electronic paper becausethe medium it provides still resembles the real medium with which theyare already familiar. Users would, perhaps, be even more comfortablewith electronic paper were it not for one drawback, and that is, thatelectronic paper is only single-sided, while virtually all real paper isdouble-sided. Although some word processing and page layout programsallow a user to input text in a duplex page mode, so that printed pagesare printed on both sides, the user still works with pages in theprogram as though they were single-sided. Some effort has also beenextended to utilize various sides of electronic images to presentinformation to users, such as the simulated three-dimensional iconsdescribed in T. Henry & S. Hudson, (January 1990) MultidimensionalIcons, ACM Transactions on Graphics, Vol. 9, No. 1, pp. 133-137, butsuch icons are quite dissimilar to electronic paper. These icons do,however, have an advantage over traditional icons in that they allow forseveral accessible views of an object to be presented using only afraction of the screen space normally required to display the sameamount of information in more traditional forms.

BRIEF SUMMARY OF THE INVENTION

A preferred embodiment of the present invention includes a piece ofelectronic paper which has two sides, reverse of one another, which canbe flipped over in response to user generated flip commands. When apiece of the paper is flipped over, a number of transition views of thepaper are generated to give the user the impression that the paper isactually being turned over to reveal a reverse side. Differentinformation can be stored on either side, and the composition of eitherside can be linked so that changes made to the graphic information onone side affects the graphic information on the other side. In addition,when the amount of graphic information on the reverse side of the paperexceeds the mount of available space normally available on the reverseside when the paper is flipped over, approximately the same amount ofspace available on the top side, the reverse side is expanded to fit thequantity of information to be displayed on the reverse side. If thereverse side has been expanded, and the user instructs the page to flipback to the top side, the reverse side shrinks back to its original sizeand then flips back to the top side.

BRIEF DESCRIPTION OF THE DRAWING

FIG. 1 is a block diagram of a computer system upon which the presentinvention may be implemented;

FIGS. 2a through 2c illustrate a page of an electronic calendar as it isflipped over to reveal a bottom side including user selectablepreferences for modifying information displayed of the top side of thecalendar and for performing other functions;

FIGS. 3a through 3d illustrate a dialog box as it is flipped over toreveal a bottom side including user selectable preferences for modifyingaspects of the function of the dialog box;

FIGS. 4a through 4c illustrate a typeface setting tool as it is flippedover to reveal a bottom side including user selectable defaultpreferences; and

FIG. 5 is a flow chart diagram illustrating a method for flipping agraphic object having two sides in accordance with the preferredembodiment of the present invention.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENT

The present invention has application to any type of computerizeddisplay system, such as a personal computer, a graphical display-basedpersonal information manager, or even a photocopier with a processorcontrolled operating display. The present invention is most particularlywell suited for implementation in a computer system 10, such as thatillustrated in FIG. 1, which utilizes some form of a graphical userinterface for controlling the operation of system software run by theprocessor 12. In the currently preferred embodiment, computer system 10is one of the Macintosh® family of personal computers, such as theMacintosh® Ilci manufactured by Apple Computer. Inc. of Cupertino,Calif.

Computer system 10 comprises a bus or other communication means 11 forcommunicating information, and a processing means 12 coupled with bus 11for processing information. System 10 further comprises a random accessmemory (RAM) or other dynamic storage device as main memory 14, coupledto bus 11 for storing information and instructions to be executed byprocessor 12. Main memory 14 also may be used for storing temporaryvariables or other intermediate information during execution ofinstructions by processor 12. Computer system 10 also comprises a readonly memory (ROM) and/or other static storage device 16 coupled to bus11 for storing static information and instructions for processor 12, anda data storage device 17, such as a magnetic disk or optical disk andits corresponding disk drive. Data storage device 17 is coupled to adisplay device 31, such as a cathode ray tube (CRT) coupled to bus 11for displaying information to a computer user.

An alphanumeric input device 32, such as a pen/stylus or keyboard, mayalso be coupled to bus 11 for communicating information and commandselections to processor 12. An additional user input device, for when apen/stylus input is not utilized, is cursor control 33, such as a mouse,a trackball, or cursor direction keys. Cursor control 33 is coupled tobus 11 for communicating direction information and command selections toprocessor 12, and for controlling cursor movement on display 31. Thegraphical user interface described above is, at least in part, employedthrough operation of input device 32, for selecting and moving objectson the screen of display device 31, and/or cursor control 33, throughits operation of a selection button.

FIG. 2a illustrates a top side of a page 40 of electronic paper in theform of a calendar, which can be displayed as a page within a window ofa window based interface system, or as a loose page in another type ofinterface system. The top of page 40 includes: a header 42; variousentries 44 for indicating different times or events during a day,together with notes and appointments corresponding to those times andevents; a jagged boundary 46 for indicating that page 40 represents onepage in a binder or notebook; a page selector 48 for providing access toadditional pages in the calendar through selection of selector 48; and amonthly calendar 50 which is overlaid on page 40. Monthly calendar 50also includes a jagged boundary 52 for indicating that monthly calendar50 is part of a binder, and a page selector 54 for accessing the otherpages of the calendar 50.

Finally, page 40 further includes a flip selecting means, such as flipselector 56, which can be selected by a user to cause page 40 to flipover and reveal a bottom side of page 40. As illustrated in FIGS. 2a-2c,this flip selecting means, flip selector 56, is an electronic buttonthat is selected with a pen/stylus device, or by positioning a cursorover the selector means 56 and pushing a selection button of cursorcontrol 33. Electronic buttons and their operation are well known in theart. Preferably, however, this flip selector means is a graphic gesture,such as that illustrated in FIG. 3a, which is made by the user within aprescribed area of the display and which is recognized by computersystem 10 as a command for performing the operation of flipping overpage 40.

When a user performs the flip gesture or activates flip selector 56,page 40 will begin to turn up on the right side as though page 40 wasbeing flipped over, as illustrated in FIG. 2b. Note that in thispreferred embodiment of the present invention, the bottom side of page40 is left blank until page 40 has completed the selected flipoperation. Once the flip operation has been completed, the contents ofthe bottom side of page 40 are revealed. The purpose of the flippingoperation is to leave the user with the impression that the bottom sideof page 40 is the opposite side or reverse side of the top side of page40. Naturally, many different means for displaying the top side andbottom side of page 40 could be developed, aside from some means offlipping a page, to leave the appearance of the two sides being onopposite sides of the same page of electronic paper, such as fading outthe information on one page while fading in the information on the otherpage, etc.

With reference now to FIG. 2c, the bottom side of page 40 includes anumber of preference areas with which the user can interact to affectchanges to both the top side and bottom side of page 40. In fact, eitherside of page 40 can be used to associate controls for affecting theappearance or function of the information on either or both sides ofpage 40, which is another particularly useful feature of the presentinvention. For example, the user could make changes to the calendarimage 60 on the bottom side of page 40 (calendar image 60 is aminiaturized image of page 40's top side), through operation of othercontrols available on the bottom side of page 40, and have those changesappear on both the top and bottom side of page 40.

To change calendar image 60, the user would use cursor control 33 toselect a portion of the calendar image 60. The user would then moveabove calendar image 60 and select some of the options 62 available tomodify the notes and appointments entered in the top side of page 40which correspond to the selected portion of calendar image 60. Forexample, selecting the Memphis option 64 would cause any text in thecorresponding selected area of the top side of page 40 to be displayedin the Memphis font. Other preferences could also be selected in thismanner, such as locking the top side of page 40 so that it can't bemodified, setting up a password to access the preferences, displaying amenu bar of additional preferences and command options, etc. Note thatwhen the bottom side of page 40 is illustrated, the position of theheader 42, the jagged boundary 46, the page selector 48, and the flipselector 56, are shown on respectively reverse sides of the page so asto clearly indicate that the bottom side of page 40 is the opposite sideof the top side of page 40. To flip back to the top side of page 40after performing any desired modifications or preference operations, theuser would simply choose flip selector 56 again, and the reverse of theflip operation described above would be performed.

A second application of the present invention is depicted in FIGS. 3athrough 3d, in which a piece of electronic paper in the form of aflippable dialog box 70 is illustrated. Dialog box 70, depicted in FIG.3a, generally would appear overlaid on a text document or spreadsheetafter execution of a find command of a software program running oncomputer system 10. By entering a word or phrase on the line 72 andselecting OK button 74, a find program would be executed which wouldscan the text document or spreadsheet looking for the word or phraseentered on line 72. Dialog boxes sometimes have preferences, like thepreferences described above for page 70, which allow the user to modifythe operation of the program executed by the dialog box 70. To displaythese preference, dialog box 70 would need to be flipped over, whichcould be achieved in either to the two previously described manners. Asan alternative embodiment, the user could first choose to select theright boarder 76 of dialog box 70, which is an electronic button whichwould recognize this as a flip command and commence execution of theflip operation.

Preferably, the user would perform a flip gesture 78, which would berecognized by recognition software associated with the computer systemrunning the software program utilizing the dialog box 70 and cause thesoftware program to commence execution of the flip operation. Typically,this flip gesture would need to conform with some predefined parametersestablished by the recognition software of the computer system 10, suchas a location parameter which specifies that the flip gesture be enteredwithin an area of the piece of paper to be flipped, such that the pieceof paper to which the flip gesture is directed is clearly specified tothe computer system. A second parameter would be a gesture parameterwhich specifies the type of gesture to be recognized for performing theflip operation. In the example of flip gesture 78, a line having anintegral loop, like a proofreader's deletion mark, is utilized.Naturally, if the user drew the flip gesture 78 just as shown in FIG. 3aevery time, the recognition software would have a relatively easy timerecognizing the gesture, but since users will not always draw this linethe same way, there must be some leeway built into the system forrecognizing a gesture as a flip gesture even when the first part of theline is very short, or the loop is very wide, or very narrow, etc.Alternatively, the recognition software could also utilize a learningtechnique which would allow the user to specify their own flip gestureby having the user first teach predefined parameters for recognizing thegesture to the computer system.

FIG. 3b further illustrates the flip operation of the dialog box 70,which in this embodiment, illustrates different portions of the bottomside of box 70 as it is being flipped. FIG. 3c illustrates the portionsof information, such as preferences 80, that are available on the bottomside of box 70 when the perimeter dimensions of the top side of box 70are utilized. Since it is possible that the bottom side of a page,dialog box, or other flippable piece of electronic paper would containmore information than would be visible within the dimensions of the topside of that paper, double-sided electronic paper is expandable once ithas been flipped. This expansion feature is illustrated in FIG. 3d, inwhich additional search preferences 82 are made available for userselection after box 70 is flipped to its bottom side. Dialog box 70would be flipped back over to the top side by selecting left boarder 86,which would cause dialog box 70 to first shrink back to the sizeillustrated in FIG. 3c and then flip back to the top side.

FIGS. 4a through 4c illustrate a third application of the presentinvention. In FIG. 4a, a piece of electronic paper in the form of atypeface changer tool 90 is illustrated, which is utilized to change thetypeface of the word "really" 92. In this example, the typeface of theword 92, is changed by selecting one of the electronic button arrowscorresponding to the size selector 94, style selector 96 or fontselector 98. Choosing one of the arrows for size selector 94 causes theword 92 to either increase or decrease in font size. Choosing one of thearrows for style selector 96 causes the style of word 92 to eitherchange, such as changing from plain text to bold or to outline. Choosingone of the arrows for font selector 98 causes the font for word 92 tochange, such as changing from a handwriting font to the Memphis font.Selecting undo button 100 would undo any changes the user had made.Selecting the right boarder 102, would cause the image of the tool toflip over and reveal a bottom side, as partially illustrated in FIG. 4b.The bottom side of typeface changer tool 90, illustrated in FIG. 4c,includes settings for a default typeface, which is illustrated by theword "preview" 104. Tool 90 would be flipped back over the top side byselecting left boarder 106.

With respect to any of the above-described applications of the presentinvention, FIG. 5 can be utilized to further illustrate the flipoperation as it would be carried out by a software program written torun on computer system 10. When a flip over command is entered by a userfor a selected piece of electronic paper, such as by selecting a boarderof a text page or performing a flip over gesture at the edge of a tool,block 110, the program would proceed to check the paper to verify thatit can flipped, block 112. If a user has attempted to flip electronicpaper which cannot be flipped, an error signal is generated, block 114.The error signal can be something simple, such a short beeping noise, oran error message could be generated which explains why the user hascommitted an error. In addition to checking to make sure the paper isdouble-sided, the program could also inspect the paper for flipprotection at this point. For example, if a user had previously locked apiece of paper so it could not be flipped over without entering thecorrect password, the program would generate a dialog box requesting thepassword after having received the flip over command. If the userentered the correct password, the program would continue, but if theuser did not know the password, the paper would be treated as though ithad no bottom side.

Having determined that the selected paper could be flipped over, theflip over animation for the paper would be retrieved from memory, block86. The flip over animation could consist of a number of stored imagedata representing the paper in various stages of turning from a top sideview to a bottom side view. Standard flip over animation could also beused for certain standard types of documents, such as pages of varioussizes, dialog boxes, etc., which include the basic animation of the pageor box, but do not include the textual or graphical information with thepaper being flipped. To create the final animation image, the two typesof information, the basic animation and the textual or graphicalinformation, would then be combined. Flip over animation could also bestored in the form of graphic primitives which are used to recreate thedesired images in near real time. Once the flip over animation had beenretrieved, in whatever form, and executed, block 118, the program wouldcheck to see if it was necessary to resize the paper to displayadditional necessary information, block 120, as described above withrespect FIG. 3d. If it was necessary to resize the paper to displayadditional information, the paper would be resized, block 122, utilizingadditional information retrieved from memory.

At this point, the program holds the execution of the flip operationwhile the user interacts with the paper. When a flip over command isagain entered for the paper, this time the flipped paper, block 124, thepaper is resized if necessary, block 126, and checked for anymodifications that might have been entered by the user, block 128. Ifthe user had performed some operation on the bottom side of the paperwhich would cause a modification of the top side of the paper, thosemodifications would then be executed and the stored animationinformation would be updated, block 130. Having updated the animation,the paper would then be flipped back over to the top side.

As can be seen from the above description, the present invention canhave many different applications, only some of which are illustratedherein. One particularly useful application would be the application ofthe flip over operation to an electronic business card, or similarobject, which could be interchanged between different computer systemsat meetings or over networks. The business card could then be flippedover to reveal additional information about the holder of the card, suchas a version of the information from the front side in a differentlanguage. The bottom side could also include a blank area, or beentirely blank, which could be used to write notes, like many peoplepresently do with paper cards, but within an expandable area, whichpeople could not do with a paper card. Thus, although the presentinvention has been described with reference to FIGS. 1 through 5, andwith emphasis on a particular embodiment, it should be understood thatthe Figures are for illustration only and should not be taken aslimitations upon the invention. It is also contemplated that manychanges and modifications may be made by one of ordinary skill in theart to the elements, process and arrangement of steps of the process ofthe invention without departing from the spirit and scope of theinvention as disclosed above.

I claim:
 1. A computer implemented method of representing andmanipulating a graphic image of a two dimensional sheet of paperdisplayed on a display device of a computer system, the computer systemincluding a central processing unit, a memory, an input device allowinga computer user to input information and commands to the centralprocessing unit, and a cursor control device for manipulating a cursordisplayed on the display device, the cursor control device including aselection device for signaling an active state and an inactive state tothe central processing unit, the method comprising the computerimplemented steps of:a) generating the graphic image of the twodimensional piece of paper, the graphic image of the two dimensionalsheet of paper including a first side and a second side, the first sideincluding first graphic information and the second side including secondgraphic information; b) storing the graphic image of the two dimensionalsheet of paper in the memory of the computer system; c) retrieving thegraphic image of the two dimensional sheet of paper from the memory; d)displaying via the display device the first side of the graphic image ofthe two dimensional sheet of paper and hiding the second side; e)determining whether the graphic image of the two dimensional sheet ofpaper may be flipped over in response to a flip command received from aone of the cursor control device and the input device; f) if the graphicimage of the two dimensional sheet of paper may be flipped over;1)retrieving the graphic image of the two dimensional sheet of paper fromthe memory; and 2) displaying via the display device the second side ofthe graphic image of the two dimensional sheet of paper and hiding thefirst side.
 2. The computer implemented method of claim 1 furthercomprising the computer implemented steps of:a) generating flip overanimation for flipping from one side to another side of the graphicimage of the two dimensional sheet of paper; b) storing the flip overanimation in the memory of the computer system; c) if the graphic imageof the two dimensional sheet of paper may be flipped over, prior todisplaying the second side of the graphic image of the two dimensionalsheet of paper:1) retrieving the flip over animation from the memory;and 2) executing and displaying the flip over animation on the displaydevice.
 3. The computer implemented method of claim 1 wherein each sideof the graphic image of the two dimensional sheet of paper includes agraphic image of a flip selector and wherein the flip command comprisesthe active state of the selection device while the cursor is over thegraphic image of the flip selector.
 4. The computer implemented methodof claim 1 wherein the determining step includes:a) verifying that thecomputer user is allowed access to the second side of the graphic imageof the two dimensional sheet of paper.
 5. The computer implementedmethod of claim 1 wherein the first side of the graphic image of the twodimensional sheet of paper is displayed in a first area of the displaydevice and wherein after the flip the second side of the graphic imageof the two dimensional sheet of paper is displayed in substantially thefirst area of the display device.
 6. The computer implemented method ofclaim 1 further comprising the computer implemented steps of:a)modifying the first graphic information associated with the first sideof the graphic image of the two dimensional sheet of paper in responseto commands from the computer user received via a one of the cursorcontrol device and the input device; b) determining whethermodifications in the second graphic information are necessary because ofmodifications to the first graphic information; and c) modifying thesecond graphic information if modifications are necessary; d) modifyingthe flip over animation to reflect the modifications of the firstgraphic information and the second graphic information; and e) storingthe modified flip over animation in the memory.
 7. A computerimplemented method of flipping over a graphic image of a two dimensionalsheet of paper in response to a user defined action representing a flipover command, the graphic image of the sheet of paper being displayed ona display device of a computer system, the computer system including acentral processing unit, a memory, an input device allowing a computeruser to input information and commands to the central processing unit,and a cursor control device for manipulating a cursor displayed on thedisplay device, the cursor control device including a selection devicefor signaling an active state and an inactive state to the centralprocessing unit, the method comprising the computer implemented stepsof:a) generating the graphic image of the two dimensional piece ofpaper, the graphic image of the two dimensional sheet of paper includinga first side and a second side, the first side including first graphicinformation and the second side including second graphic information; b)storing the graphic image of the two dimensional sheet of paper in thememory of the computer system; c) generating a graphic image of the userdefined input representing a flip command for flipping over the graphicimage of the two dimensional sheet of paper; d) storing in the memorythe graphic image of the user defined input representing a flip overcommand; e) defining recognition parameters for determining whether auser input is the user defined input for the flip over command, therecognition parameters including a location parameter identifying theuser input as related to the user defined input if the user input occurswithin an area of the display device occupied by the graphic image ofthe two dimensional sheet of paper; f) storing the recognitionparameters in the memory; g) retrieving the graphic image of the twodimensional sheet of paper from the memory; h) displaying via thedisplay device the first side of the graphic image of the twodimensional sheet of paper and hiding the second side; i) determiningwhether the flip command has been received by comparing a user input tothe graphic image of the user defined input representing the flip overcommand and to the recognition parameters stored in the memory; j)determining whether the graphic image of the two dimensional sheet ofpaper may be flipped over in response to the flip over command; k) ifthe graphic image of the two dimensional sheet of paper may be flippedover;1) retrieving the graphic image of the two dimensional sheet ofpaper from the memory; and 2) displaying via the display device thesecond side of the graphic image of the two dimensional sheet of paperand hiding the first side.
 8. The computer implemented method of claim 7wherein a portion of the recognition parameters are specified by theuser.